package com.lehecai.core.search.entity.lottery;


import com.lehecai.core.search.converter.SearchEntityPropertyConverterDelegate;
import com.lehecai.core.search.entity.SearchEntityPropertyDefine;

/**
 * @author hanwenda
 *
 */
public class PlanOrderSearchDefine {

    public final static String ORDER_ID = "order_id";
    public final static String PLAN_ID = "plan_id";
    public final static String UID = "uid";
    public final static String CREATE_AT = "create_at";
    public final static String STATUS = "status";
    public final static String AMOUNT = "amount";
    public final static String PRIZE_POSTTAX = "prize_posttax";
    public final static String PRIZE_STATUS = "prize_status";
    public final static String PRIZE_TIME = "prize_time";
    public final static String TYPE = "type";
    public final static String LOTTERY_TYPE = "lottery_type";
    public final static String PHASE = "phase";
    public final static String SOURCE = "source";
    public final static String PLATFORM = "platform";
    
    public final static String CREATE_AT_START = "create_time_start";
    public final static String CREATE_AT_END = "create_time_end";
    public final static String PRIZE_TIME_START = "prize_time_start";
    public final static String PRIZE_TIME_END = "prize_time_end";

	/**
	 * 属性定义
	 */
	private static SearchEntityPropertyDefine[] definition = new SearchEntityPropertyDefine[] {
			new SearchEntityPropertyDefine(ORDER_ID, "id", SearchEntityPropertyConverterDelegate.StringToLong),
			new SearchEntityPropertyDefine(PLAN_ID, "planId", SearchEntityPropertyConverterDelegate.StringToLong),
			new SearchEntityPropertyDefine(UID, SearchEntityPropertyConverterDelegate.LongToLong),
            new SearchEntityPropertyDefine(CREATE_AT, "createdTime", SearchEntityPropertyConverterDelegate.DateToLong),
            new SearchEntityPropertyDefine(STATUS, "orderStatus", SearchEntityPropertyConverterDelegate.PlanOrderStatusToInteger),
            new SearchEntityPropertyDefine(AMOUNT, SearchEntityPropertyConverterDelegate.DoubleToLong),
            new SearchEntityPropertyDefine(PRIZE_POSTTAX, "posttaxPrize", SearchEntityPropertyConverterDelegate.DoubleToLong),
            new SearchEntityPropertyDefine(PRIZE_STATUS, "prizeStatus", SearchEntityPropertyConverterDelegate.PrizeStatusToInteger),
            new SearchEntityPropertyDefine(PRIZE_TIME, "prizeTime", SearchEntityPropertyConverterDelegate.DateToLong),
            new SearchEntityPropertyDefine(TYPE, "orderType", SearchEntityPropertyConverterDelegate.PlanOrderTypeToInteger),
            new SearchEntityPropertyDefine(LOTTERY_TYPE, "lotteryType", SearchEntityPropertyConverterDelegate.LotteryTypeToInteger),
            new SearchEntityPropertyDefine(PHASE, SearchEntityPropertyConverterDelegate.StringToLong),
            new SearchEntityPropertyDefine(SOURCE, "sourceId", SearchEntityPropertyConverterDelegate.LongToLong),
            new SearchEntityPropertyDefine(PLATFORM, "platformType", SearchEntityPropertyConverterDelegate.PlatformTypeToInteger),
	};
	
	public static SearchEntityPropertyDefine[] get() {
		return definition;
	}
}
